home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Aminet 30
/
Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso
/
Aminet
/
dev
/
lang
/
SmallEiffel.lha
/
SmallEiffel
/
bin_c
/
pretty25.c
< prev
next >
Wrap
C/C++ Source or Header
|
1998-12-22
|
35KB
|
1,759 lines
/*
-- ANSI C code generated by :
-- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.79) --
-- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
-- Dominique COLNET and Suzanne COLLIN - colnet@loria.fr --
-- http://www.loria.fr/SmallEiffel --
*/
#include "pretty.h"
T0* r359start_position(T359* C){
T0* R=NULL;
R=X89start_position((C)->_expression/*4*/);
return R;
}
T0* r359add_comment(T359* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r32count(((T32*)((((T64*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T214*n=malloc(sizeof(*n));
*n=M214;
r214make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
/*No:IMPLICIT_CAST.expression*/
void r359print_as_target(T359* C){
X89print_as_target((C)->_expression/*4*/);
}
T2 r359to_integer(T359* C){
T2 R=0;
r359error(r359start_position(C),((T0*)ms12_45846));
return R;
}
void r359bracketed_pretty_print(T359* C){
X89pretty_print((C)->_expression/*4*/);
}
T0* r359to_runnable(T359* C,T0* a1){
T0* R=NULL;
T0* _e=NULL;
_e=X89to_runnable((C)->_expression/*4*/,a1);
/*[IF*/
if(((C)->_expression/*4*/)==((void*)(_e))){
R=(T0*)C;
}
else{
{T359*n=malloc(sizeof(*n));
*n=M359;
r359make(n,_e,(C)->_result_type/*8*/);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
/*No:IMPLICIT_CAST.fz_iinaiv*/
/*No:IMPLICIT_CAST.result_type*/
void r359error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}
T2 r359precedence(T359* C){
T2 R=0;
R=X89precedence((C)->_expression/*4*/);
return R;
}
void r359make(T359* C,T0* a1,T0* a2){
C->_expression=a1;
C->_result_type=a2;
}
T6 r359is_current(T359* C){
T6 R=0;
R=X89is_current((C)->_expression/*4*/);
return R;
}
void r359pretty_print(T359* C){
X89pretty_print((C)->_expression/*4*/);
}
/*No:IMPLICIT_CAST.is_void*/
/*No:CALL_INFIX_GT.feature_name*/
/*No:CALL_INFIX_GT.right_brackets*/
T0* r107start_position(T107* C){
T0* R=NULL;
R=((T121*)((C)->_feature_name/*12*/))->_start_position/*8*/;
return R;
}
T0* r107add_comment(T107* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r32count(((T32*)((((T64*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T214*n=malloc(sizeof(*n));
*n=M214;
r214make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
T2 r107to_integer(T107* C){
T2 R=0;
r107error(r107start_position(C),((T0*)ms12_45846));
return R;
}
void r107bracketed_pretty_print(T107* C){
r310put_character((T310*)(oBC11fmt),'\50');
r107pretty_print(C);
r310put_character((T310*)(oBC11fmt),'\51');
}
void r107print_op(T107* C){
r310put_character((T310*)(oBC11fmt),'\40');
/*[IRF3.6pretty_print*/{T121* C1=(T121*)((C)->_feature_name/*12*/);
r310put_string((T310*)(oBC11fmt),(C1)->_to_string/*4*/);
}/*]*/
r310put_character((T310*)(oBC11fmt),'\40');
}
T0* r107to_runnable(T107* C,T0* a1){
T0* R=NULL;
T0* _rf=NULL;
T0* _tbee=NULL;
T0* _at=NULL;
T0* _tt=NULL;
T0* _a=NULL;
T0* _t=NULL;
_t=r107runnable_expression((C)->_target/*4*/,a1);
_a=r107runnable_args((C)->_arguments/*8*/,a1);
_tt=X89result_type(_t);
_at=X89result_type(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
/*[IF*/
/*AF*//*AE*/
/*FI]*/
_rf=r107run_feature_for(C,_t,a1);
/*[IF*/
if(((C)->_run_feature/*16*/)==((void*)(NULL))){
C->_target=_t;
C->_arguments=_a;
C->_run_feature=_rf;
r107run_feature_match(C,a1);
R=(T0*)C;
}
else if(((_t)==((void*)((C)->_target/*4*/)))&&((_a)==((void*)((C)->_arguments/*8*/)))){
R=(T0*)C;
}
else{
{T107*n=malloc(sizeof(*n));
*n=M107;
r107with(n,_t,(C)->_feature_name/*12*/,_a,_rf,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_GT.fz_bad_argument*/
/*No:CALL_INFIX_GT.fz_iinaiv*/
T0* r107result_type(T107* C){
T0* R=NULL;
T0* _tla=NULL;
R=X312result_type((C)->_run_feature/*16*/);
/*[IF*/
if(X62is_like_current(R)){
R=/*X312current_type*/((T0*)((T325*)((C)->_run_feature/*16*/))->_current_type/*4*/);
}
else{
_tla=R;
if(NULL!=(_tla))switch(((T0*)_tla)->id) {
case 242:
break;
default:
_tla=NULL;
};/*[IF*/
if((_tla)!=((void*)(NULL))){
R=X62run_type(X89result_type(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/));
}
/*FI]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_GT.run_feature*/
T0* r107runnable_args(T0* a1,T0* a2){
T0* R=NULL;
R=r132to_runnable(((T132*)a1),a2);
/*[IF*/
if((R)==((void*)(NULL))){
r37add_position(r132start_position(((T132*)a1)));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms12_13065);
r37fatal_error((T37*)(oBC11eh),b1);
}/*]*/
}
/*FI]*/
return R;
}
void r107with(T107* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
C->_target=a1;
C->_feature_name=a2;
C->_arguments=a3;
C->_run_feature=a4;
r107run_feature_match(C,a5);
}
/*No:CALL_INFIX_GT.fatal_error*/
void r107run_feature_match(T107* C,T0* a1){
r107run_feature_has_result(C);
r132match_with((T132*)((C)->_arguments/*8*/),(C)->_run_feature/*16*/,a1);
}
/*No:CALL_INFIX_GT.arguments*/
T0* r107runnable_expression(T0* a1,T0* a2){
T0* R=NULL;
R=X89to_runnable(a1,a2);
/*[IF*/
if((R)==((void*)(NULL))){
r37add_position(X89start_position(a1));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms101_16515);
r37fatal_error((T37*)(oBC11eh),b1);
}/*]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_GT.left_brackets*/
/*No:CALL_INFIX_GT.us_gt*/
/*No:CALL_INFIX_GT.implicit_cast*/
void r107print_as_target(T107* C){
r310put_character((T310*)(oBC11fmt),'\50');
r107pretty_print(C);
r310put_character((T310*)(oBC11fmt),'\51');
r310put_character((T310*)(oBC11fmt),'\56');
}
/*No:CALL_INFIX_GT.arg1*/
void r107run_feature_has_result(T107* C){
/*[IF*/
if((X312result_type((C)->_run_feature/*16*/))==((void*)(NULL))){
r37add_position(X312start_position((C)->_run_feature/*16*/));
r37add_position(((T121*)((C)->_feature_name/*12*/))->_start_position/*8*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms100_53650);
r37fatal_error((T37*)(oBC11eh),b1);
}/*]*/
}
/*FI]*/
}
T0* r107run_feature_for(T107* C,T0* a1,T0* a2){
T0* R=NULL;
T0* _rc=NULL;
_rc=X62run_class(X89result_type(a1));
R=r313get_rf(((T313*)_rc),a1,(C)->_feature_name/*12*/,a2);
return R;
}
/*No:CALL_INFIX_GT.target*/
void r107error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}
/*No:CALL_INFIX_GT.precedence*/
void r107make(T107* C,T0* a1,T0* a2,T0* a3){
C->_target=a1;
{T121*n=malloc(sizeof(*n));
*n=M121;
r121make(n,r107operator(),a2);
C->_feature_name=(T0*)n;
}
{T132*n=malloc(sizeof(*n));
*n=M132;
/*[IRF3.3make_1*/((((T132*)(n)))->_first_one)=(a3);
/*]*/
C->_arguments=(T0*)n;
}
}
/*No:CALL_INFIX_GT.is_current*/
void r107pretty_print(T107* C){
/*[IF*/
if((X89precedence((C)->_target/*4*/))==(13)){
X89pretty_print((C)->_target/*4*/);
}
else if((6)>(X89precedence((C)->_target/*4*/))){
X89bracketed_pretty_print((C)->_target/*4*/);
}
else if((6)<(X89precedence((C)->_target/*4*/))){
X89pretty_print((C)->_target/*4*/);
}
/*AF*/else{
X89pretty_print((C)->_target/*4*/);
}
/*FI]*/
r107print_op(C);
/*[IF*/
if((X89precedence(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/))==(13)){
X89pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
else if((6)>(X89precedence(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/))){
X89bracketed_pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
else if((6)<(X89precedence(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/))){
X89pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
else {/*AT*/X89bracketed_pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
/*FI]*/
}
/*No:CALL_INFIX_GT.is_void*/
T0* r107operator(void){
T0* R=NULL;
R=((T0*)ms13_63);
return R;
}
/*No:CALL_INFIX_GT.atomic_precedence*/
/*No:CALL_INFIX_LT.feature_name*/
/*No:CALL_INFIX_LT.right_brackets*/
T0* r109start_position(T109* C){
T0* R=NULL;
R=((T121*)((C)->_feature_name/*12*/))->_start_position/*8*/;
return R;
}
T0* r109add_comment(T109* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r32count(((T32*)((((T64*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T214*n=malloc(sizeof(*n));
*n=M214;
r214make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
T2 r109to_integer(T109* C){
T2 R=0;
r109error(r109start_position(C),((T0*)ms12_45846));
return R;
}
void r109bracketed_pretty_print(T109* C){
r310put_character((T310*)(oBC11fmt),'\50');
r109pretty_print(C);
r310put_character((T310*)(oBC11fmt),'\51');
}
void r109print_op(T109* C){
r310put_character((T310*)(oBC11fmt),'\40');
/*[IRF3.6pretty_print*/{T121* C1=(T121*)((C)->_feature_name/*12*/);
r310put_string((T310*)(oBC11fmt),(C1)->_to_string/*4*/);
}/*]*/
r310put_character((T310*)(oBC11fmt),'\40');
}
T0* r109to_runnable(T109* C,T0* a1){
T0* R=NULL;
T0* _rf=NULL;
T0* _tbee=NULL;
T0* _at=NULL;
T0* _tt=NULL;
T0* _a=NULL;
T0* _t=NULL;
_t=r109runnable_expression((C)->_target/*4*/,a1);
_a=r109runnable_args((C)->_arguments/*8*/,a1);
_tt=X89result_type(_t);
_at=X89result_type(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
/*[IF*/
/*AF*//*AE*/
/*FI]*/
_rf=r109run_feature_for(C,_t,a1);
/*[IF*/
if(((C)->_run_feature/*16*/)==((void*)(NULL))){
C->_target=_t;
C->_arguments=_a;
C->_run_feature=_rf;
r109run_feature_match(C,a1);
R=(T0*)C;
}
else if(((_t)==((void*)((C)->_target/*4*/)))&&((_a)==((void*)((C)->_arguments/*8*/)))){
R=(T0*)C;
}
else{
{T109*n=malloc(sizeof(*n));
*n=M109;
r109with(n,_t,(C)->_feature_name/*12*/,_a,_rf,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_LT.fz_bad_argument*/
/*No:CALL_INFIX_LT.fz_iinaiv*/
T0* r109result_type(T109* C){
T0* R=NULL;
T0* _tla=NULL;
R=X312result_type((C)->_run_feature/*16*/);
/*[IF*/
if(X62is_like_current(R)){
R=/*X312current_type*/((T0*)((T325*)((C)->_run_feature/*16*/))->_current_type/*4*/);
}
else{
_tla=R;
if(NULL!=(_tla))switch(((T0*)_tla)->id) {
case 242:
break;
default:
_tla=NULL;
};/*[IF*/
if((_tla)!=((void*)(NULL))){
R=X62run_type(X89result_type(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/));
}
/*FI]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_LT.run_feature*/
T0* r109runnable_args(T0* a1,T0* a2){
T0* R=NULL;
R=r132to_runnable(((T132*)a1),a2);
/*[IF*/
if((R)==((void*)(NULL))){
r37add_position(r132start_position(((T132*)a1)));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms12_13065);
r37fatal_error((T37*)(oBC11eh),b1);
}/*]*/
}
/*FI]*/
return R;
}
void r109with(T109* C,T0* a1,T0* a2,T0* a3,T0* a4,T0* a5){
C->_target=a1;
C->_feature_name=a2;
C->_arguments=a3;
C->_run_feature=a4;
r109run_feature_match(C,a5);
}
/*No:CALL_INFIX_LT.fatal_error*/
void r109run_feature_match(T109* C,T0* a1){
r109run_feature_has_result(C);
r132match_with((T132*)((C)->_arguments/*8*/),(C)->_run_feature/*16*/,a1);
}
/*No:CALL_INFIX_LT.arguments*/
T0* r109runnable_expression(T0* a1,T0* a2){
T0* R=NULL;
R=X89to_runnable(a1,a2);
/*[IF*/
if((R)==((void*)(NULL))){
r37add_position(X89start_position(a1));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms101_16515);
r37fatal_error((T37*)(oBC11eh),b1);
}/*]*/
}
/*FI]*/
return R;
}
/*No:CALL_INFIX_LT.left_brackets*/
/*No:CALL_INFIX_LT.implicit_cast*/
void r109print_as_target(T109* C){
r310put_character((T310*)(oBC11fmt),'\50');
r109pretty_print(C);
r310put_character((T310*)(oBC11fmt),'\51');
r310put_character((T310*)(oBC11fmt),'\56');
}
/*No:CALL_INFIX_LT.us_lt*/
/*No:CALL_INFIX_LT.arg1*/
void r109run_feature_has_result(T109* C){
/*[IF*/
if((X312result_type((C)->_run_feature/*16*/))==((void*)(NULL))){
r37add_position(X312start_position((C)->_run_feature/*16*/));
r37add_position(((T121*)((C)->_feature_name/*12*/))->_start_position/*8*/);
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms100_53650);
r37fatal_error((T37*)(oBC11eh),b1);
}/*]*/
}
/*FI]*/
}
T0* r109run_feature_for(T109* C,T0* a1,T0* a2){
T0* R=NULL;
T0* _rc=NULL;
_rc=X62run_class(X89result_type(a1));
R=r313get_rf(((T313*)_rc),a1,(C)->_feature_name/*12*/,a2);
return R;
}
/*No:CALL_INFIX_LT.target*/
void r109error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}
/*No:CALL_INFIX_LT.precedence*/
void r109make(T109* C,T0* a1,T0* a2,T0* a3){
C->_target=a1;
{T121*n=malloc(sizeof(*n));
*n=M121;
r121make(n,r109operator(),a2);
C->_feature_name=(T0*)n;
}
{T132*n=malloc(sizeof(*n));
*n=M132;
/*[IRF3.3make_1*/((((T132*)(n)))->_first_one)=(a3);
/*]*/
C->_arguments=(T0*)n;
}
}
/*No:CALL_INFIX_LT.is_current*/
void r109pretty_print(T109* C){
/*[IF*/
if((X89precedence((C)->_target/*4*/))==(13)){
X89pretty_print((C)->_target/*4*/);
}
else if((6)>(X89precedence((C)->_target/*4*/))){
X89bracketed_pretty_print((C)->_target/*4*/);
}
else if((6)<(X89precedence((C)->_target/*4*/))){
X89pretty_print((C)->_target/*4*/);
}
/*AF*/else{
X89pretty_print((C)->_target/*4*/);
}
/*FI]*/
r109print_op(C);
/*[IF*/
if((X89precedence(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/))==(13)){
X89pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
else if((6)>(X89precedence(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/))){
X89bracketed_pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
else if((6)<(X89precedence(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/))){
X89pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
else {/*AT*/X89bracketed_pretty_print(/*(IRF4.6arg1*//*(IRF4.3first*/(((T132*)((C)->_arguments/*8*/)))->_first_one/*0*//*)*//*)*/);
}
/*FI]*/
}
/*No:CALL_INFIX_LT.is_void*/
T0* r109operator(void){
T0* R=NULL;
R=((T0*)ms13_61);
return R;
}
/*No:CALL_INFIX_LT.atomic_precedence*/
/*No:LOOP_INVARIANT.nb_errors*/
/*No:LOOP_INVARIANT.start_position*/
T0* r227twin(T227* C){
T0* R=NULL;
R=malloc(sizeof(*C));
*((T227*)R)=*C;
return R;
}
T0* r227runnable(T0* a1,T0* a2,T0* a3){
T0* R=NULL;
T0* _a=NULL;
T2 _i=0;
/*[IF*/
if(!(r88empty(((T88*)a1)))){
R=r88twin(((T88*)a1));
_i=(((T88*)R))->_upper/*8*/;
while (!((_i)==(0))) {
r42push((T42*)(oBC11small_eiffel),a3);
_a=r85to_runnable((T85*)(r88item(((T88*)R),_i)),a2);
/*[IF*/
if((_a)==((void*)(NULL))){
r227error(r85start_position((T85*)(r88item(((T88*)R),_i))),((T0*)ms12_14266));
}
else{
/*[IRF3.6put*/{T88* C1=((T88*)R);
T0* b1=_a;
T2 b2=_i;
((C1)->_storage/*0*/)[(b2)-((C1)->_lower/*12*/)]=(b1);
}/*]*/
}
/*FI]*/
r42pop((T42*)(oBC11small_eiffel));
_i=(_i)-(1);
}
}
/*FI]*/
return R;
}
/*No:LOOP_INVARIANT.header_comment*/
T0* r227to_runnable(T227* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((C)->_current_type/*12*/)==((void*)(NULL))){
C->_current_type=a1;
C->_run_feature=r42top_rf((T42*)(oBC11small_eiffel));
/*[IF*/
if(((C)->_list/*8*/)!=((void*)(NULL))){
C->_list=r227runnable((C)->_list/*8*/,a1,(C)->_run_feature/*16*/);
}
/*FI]*/
/*[IF*/
if((/*(IRF4.9nb_errors*/((T37*)(oBC11eh))->_nb_errors/*4*//*)*/)==(0)){
R=(T0*)C;
}
/*FI]*/
}
else{
R=r227twin(C);
/*[IRF3.3set_current_type*/((((T227*)(((T227*)R))))->_current_type)=(NULL);
/*]*/
R=r227to_runnable(((T227*)R),a1);
}
/*FI]*/
return R;
}
/*No:LOOP_INVARIANT.set_current_type*/
/*No:LOOP_INVARIANT.fz_bad_assertion*/
/*No:LOOP_INVARIANT.current_type*/
void r227error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}
/*No:LOOP_INVARIANT.run_feature*/
void r227make(T227* C,T0* a1,T0* a2,T0* a3){
C->_start_position=a1;
C->_header_comment=a2;
C->_list=a3;
}
void r227pretty_print(T227* C){
T2 _i=0;
r310indent((T310*)(oBC11fmt));
r310keyword((T310*)(oBC11fmt),r227name());
r310level_incr((T310*)(oBC11fmt));
/*[IF*/
if(((C)->_header_comment/*4*/)!=((void*)(NULL))){
r64pretty_print((T64*)((C)->_header_comment/*4*/));
}
else{
r310indent((T310*)(oBC11fmt));
}
/*FI]*/
/*[IF*/
if(((C)->_list/*8*/)!=((void*)(NULL))){
_i=1;
while (!((_i)>(((T88*)((C)->_list/*8*/))->_upper/*8*/))) {
/*[IF*/
if(r6_px_and(r310zen_mode((T310*)(oBC11fmt)),(_i)==(((T88*)((C)->_list/*8*/))->_upper/*8*/))){
/*[IRF3.3set_semi_colon_flag*/((((T310*)((T310*)(oBC11fmt))))->_semi_colon_flag)=(0);
/*]*/
}
else{
/*[IRF3.3set_semi_colon_flag*/((((T310*)((T310*)(oBC11fmt))))->_semi_colon_flag)=(1);
/*]*/
}
/*FI]*/
r310indent((T310*)(oBC11fmt));
r85pretty_print((T85*)(r88item((T88*)((C)->_list/*8*/),_i)));
_i=(_i)+(1);
}
}
/*FI]*/
r310level_decr((T310*)(oBC11fmt));
r310indent((T310*)(oBC11fmt));
}
T0* r227name(void){
T0* R=NULL;
R=((T0*)ms227_14427);
return R;
}
/*No:LOOP_INVARIANT.list*/
T0* r241generic_list(T241* C){
T0* R=NULL;
/*[IF*/
if(r241is_generic(C)){
R=X62generic_list((C)->_run_type/*8*/);
}
else{
r241fatal_error_generic_list(C);
}
/*FI]*/
return R;
}
T0* r241base_class(T241* C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=r241base_class_name(C);
/*[IF*/
if((_bcn)!=((void*)(NULL))){
R=r49base_class(((T49*)_bcn));
}
else{
/*[IRF3.6append*/{T0* b1=((T0*)ms62_37098);
r7append((T7*)(oBC37explanation),b1);
}/*]*/
r37add_type((T0*)C,((T0*)ms12_47));
r37print_as_fatal_error((T37*)(oBC11eh));
}
/*FI]*/
return R;
}
T0* r241base_class_name(T241* C){
T0* R=NULL;
R=X62base_class_name((C)->_run_type/*8*/);
return R;
}
/*No:TYPE_LIKE_CURRENT.start_position*/
/*No:TYPE_LIKE_CURRENT.is_formal_generic*/
void r241used_as_reference(T241* C){
X62used_as_reference((C)->_run_type/*8*/);
}
T6 r241is_a_in(T241* C,T0* a1,T0* a2){
T6 R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*[IF*/
if((r241written_mark())==((void*)(X62written_mark(a1)))){
R=1;
}
else{
_ct=(((T313*)a2))->_current_type/*0*/;
_t1=r241to_runnable(C,_ct);
_t2=X62to_runnable(a1,_ct);
/*[IF*/
if((X62run_time_mark(_t1))==((void*)(X62run_time_mark(_t2)))){
R=1;
}
else{
R=X62is_a(_t1,_t2);
}
/*FI]*/
}
/*FI]*/
return R;
}
T2 r241id(T241* C){
T2 R=0;
R=((T313*)(r241run_class(C)))->_id/*4*/;
return R;
}
T6 r241is_pointer(T241* C){
T6 R=0;
R=X62is_pointer((C)->_run_type/*8*/);
return R;
}
T0* r241look_up_for(T241* C,T0* a1,T0* a2){
T0* R=NULL;
R=r41look_up_for((T41*)(r241base_class(C)),a1,a2);
return R;
}
T0* r241to_runnable(T241* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((C)->_run_type/*8*/)==((void*)(NULL))){
C->_run_type=a1;
R=(T0*)C;
}
else if(((C)->_run_type/*8*/)==((void*)(a1))){
R=(T0*)C;
}
else{
{T241*n=malloc(sizeof(*n));
*n=M241;
r241with(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
/*No:TYPE_LIKE_CURRENT.run_type*/
T0* r241run_class(T241* C){
T0* R=NULL;
R=r42run_class((C)->_run_type/*8*/);
return R;
}
/*No:TYPE_LIKE_CURRENT.us_like_current*/
T6 r241has_creation(T241* C,T0* a1){
T6 R=0;
R=X62has_creation((C)->_run_type/*8*/,a1);
return R;
}
T0* r241expanded_initializer(T241* C){
T0* R=NULL;
R=X62expanded_initializer((C)->_run_type/*8*/);
return R;
}
/*No:TYPE_LIKE_CURRENT.is_like_current*/
T6 r241is_boolean(T241* C){
T6 R=0;
R=X62is_boolean((C)->_run_type/*8*/);
return R;
}
T6 r241is_generic(T241* C){
T6 R=0;
R=X62is_generic((C)->_run_type/*8*/);
return R;
}
T6 r241is_bit(T241* C){
T6 R=0;
R=X62is_bit((C)->_run_type/*8*/);
return R;
}
T6 r241is_real(T241* C){
T6 R=0;
R=X62is_real((C)->_run_type/*8*/);
return R;
}
void r241with(T241* C,T0* a1,T0* a2){
C->_start_position=(((T241*)a1))->_start_position/*4*/;
C->_run_type=a2;
}
T0* r241smallest_ancestor(T241* C,T0* a1){
T0* R=NULL;
R=X62smallest_ancestor((C)->_run_type/*8*/,a1);
return R;
}
T6 r241is_any(T241* C){
T6 R=0;
R=X62is_any((C)->_run_type/*8*/);
return R;
}
T0* r241run_time_mark(T241* C){
T0* R=NULL;
/*[IF*/
if(((C)->_run_type/*8*/)!=((void*)(NULL))){
R=X62run_time_mark((C)->_run_type/*8*/);
}
/*FI]*/
return R;
}
T6 r241is_expanded(T241* C){
T6 R=0;
R=X62is_expanded((C)->_run_type/*8*/);
return R;
}
T6 r241is_basic_eiffel_expanded(T241* C){
T6 R=0;
R=X62is_basic_eiffel_expanded((C)->_run_type/*8*/);
return R;
}
T6 r241is_string(T241* C){
T6 R=0;
R=X62is_string((C)->_run_type/*8*/);
return R;
}
T6 r241is_integer(T241* C){
T6 R=0;
R=X62is_integer((C)->_run_type/*8*/);
return R;
}
/*No:TYPE_LIKE_CURRENT.is_like_feature*/
/*No:TYPE_LIKE_CURRENT.fz_dot*/
/*No:TYPE_LIKE_CURRENT.is_anchored*/
/*No:TYPE_LIKE_CURRENT.is_run_type*/
T6 r241is_a(T241* C,T0* a1){
T6 R=0;
/*[IF*/
if(X62is_like_current(a1)){
R=1;
}
else{
R=X62is_a((C)->_run_type/*8*/,a1);
}
/*FI]*/
return R;
}
T6 r241is_character(T241* C){
T6 R=0;
R=X62is_character((C)->_run_type/*8*/);
return R;
}
T6 r241is_reference(T241* C){
T6 R=0;
R=X62is_reference((C)->_run_type/*8*/);
return R;
}
T0* r241written_mark(void){
T0* R=NULL;
R=((T0*)ms13_22320);
return R;
}
/*No:TYPE_LIKE_CURRENT.make*/
T6 r241is_none(T241* C){
T6 R=0;
R=X62is_none((C)->_run_type/*8*/);
return R;
}
/*No:TYPE_LIKE_CURRENT.pretty_print*/
T6 r241is_array(T241* C){
T6 R=0;
R=X62is_array((C)->_run_type/*8*/);
return R;
}
void r241fatal_error_generic_list(T241* C){
r37add_type((T0*)C,((T0*)ms62_29184));
r37print_as_fatal_error((T37*)(oBC11eh));
}
/*No:TYPE_LIKE_CURRENT.is_like_argument*/
T6 r241is_double(T241* C){
T6 R=0;
R=X62is_double((C)->_run_type/*8*/);
return R;
}
/*No:STD_FILE_WRITE.path*/
void r309connect_to(T309* C,T0* a1){
T8 _p=0;
_p=r7to_external(((T7*)a1));
C->_output_stream=fopen((char*)_p,"w");
/*[IF*/
if((NULL!=(C)->_output_stream/*4*/)){
C->_path=a1;
}
/*FI]*/
}
/*No:STD_FILE_WRITE.is_connected*/
/*No:STD_FILE_WRITE.output_stream*/
void r309disconnect(T309* C){
fclose((C)->_output_stream/*4*/);
C->_path=NULL;
}
/*No:STD_FILE_WRITE.make*/
/*No:STD_FILE_WRITE.put_character*/
/*No:TYPE_ARRAY.generic_list*/
T0* r244base_class(T244* C){
T0* R=NULL;
T0* _bcn=NULL;
_bcn=(C)->_base_class_name/*4*/;
/*[IF*/
if((_bcn)!=((void*)(NULL))){
R=r49base_class(((T49*)_bcn));
}
else{
/*[IRF3.6append*/{T0* b1=((T0*)ms62_37098);
r7append((T7*)(oBC37explanation),b1);
}/*]*/
r37add_type((T0*)C,((T0*)ms12_47));
r37print_as_fatal_error((T37*)(oBC11eh));
}
/*FI]*/
return R;
}
/*No:TYPE_ARRAY.base_class_name*/
/*No:TYPE_ARRAY.start_position*/
/*No:TYPE_ARRAY.us_capacity*/
/*No:TYPE_ARRAY.is_formal_generic*/
/*No:TYPE_ARRAY.run_type_memory*/
/*No:TYPE_ARRAY.used_as_reference*/
T6 r244is_a_in(T244* C,T0* a1,T0* a2){
T6 R=0;
T0* _ct=NULL;
T0* _t2=NULL;
T0* _t1=NULL;
/*[IF*/
if(((C)->_written_mark/*12*/)==((void*)(X62written_mark(a1)))){
R=1;
}
else{
_ct=(((T313*)a2))->_current_type/*0*/;
_t1=r244to_runnable(C,_ct);
_t2=X62to_runnable(a1,_ct);
/*[IF*/
if((X62run_time_mark(_t1))==((void*)(X62run_time_mark(_t2)))){
R=1;
}
else{
R=X62is_a(_t1,_t2);
}
/*FI]*/
}
/*FI]*/
return R;
}
T2 r244id(T244* C){
T2 R=0;
R=((T313*)(r244run_class(C)))->_id/*4*/;
return R;
}
/*No:TYPE_ARRAY.is_pointer*/
T0* r244look_up_for(T244* C,T0* a1,T0* a2){
T0* R=NULL;
R=r41look_up_for((T41*)(r244base_class(C)),a1,a2);
return R;
}
T0* r244to_runnable(T244* C,T0* a1){
T0* R=NULL;
T0* _et2=NULL;
T0* _et1=NULL;
_et1=/*(IRF4.6array_of*/r245first(((T245*)((C)->_generic_list/*8*/)))/*)*/;
_et2=X62to_runnable(_et1,a1);
/*[IF*/
if((_et2)==((void*)(NULL))){
/*[IF*/
if((_et2)!=((void*)(NULL))){
r37add_position(X62start_position(_et2));
}
/*FI]*/
r37add_position(X62start_position(_et1));
/*[IRF3.6fatal_error*/{T0* b1=((T0*)ms12_28959);
r37fatal_error((T37*)(oBC11eh),b1);
}/*]*/
}
/*FI]*/
/*[IF*/
if(((C)->_run_type_memory/*16*/)==((void*)(NULL))){
R=(T0*)C;
/*[IF*/
if((X62run_type(_et2))==((void*)(_et1))){
C->_run_type_memory=(T0*)C;
}
else{
{T244*n=malloc(sizeof(*n));
*n=M244;
r244final(n,(C)->_base_class_name/*4*/,X62run_type(_et2));
C->_run_type_memory=(T0*)n;
}
}
/*FI]*/
}
else if((_et2)==((void*)(_et1))){
R=(T0*)C;
}
else{
{T244*n=malloc(sizeof(*n));
*n=M244;
r244with(n,(C)->_base_class_name/*4*/,(C)->_written_mark/*12*/,_et2);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
/*No:TYPE_ARRAY.array_of*/
void r244load_basic_features(T244* C){
T0* _rc=NULL;
T0* _rf=NULL;
T0* _et=NULL;
_et=/*(IRF4.6array_of*/r245first(((T245*)((C)->_generic_list/*8*/)))/*)*/;
/*[IF*/
if(X62is_expanded(_et)){
r313set_at_run_time((T313*)(X62run_class(_et)));
}
/*FI]*/
_rc=r244run_class(C);
_rf=r313get_feature_with(((T313*)_rc),((T0*)ms13_11896));
_rf=r313get_feature_with(((T313*)_rc),((T0*)ms13_2840));
_rf=r313get_feature_with(((T313*)_rc),((T0*)ms13_2855));
_rf=r313get_feature_with(((T313*)_rc),((T0*)ms13_8925));
}
T0* r244run_type(T244* C){
T0* R=NULL;
/*[IF*/
if(r244is_run_type(C)){
R=(C)->_run_type_memory/*16*/;
}
/*FI]*/
return R;
}
T0* r244run_class(T244* C){
T0* R=NULL;
/*[IF*/
if(r244is_run_type(C)){
R=r42run_class(r244run_type(C));
}
/*FI]*/
return R;
}
T6 r244has_creation(T244* C,T0* a1){
T6 R=0;
/*[IF*/
if((C)==((void*)(r244run_type(C)))){
R=r41has_creation((T41*)(r244base_class(C)),a1);
}
else{
R=X62has_creation(r244run_type(C),a1);
}
/*FI]*/
return R;
}
/*No:TYPE_ARRAY.expanded_initializer*/
/*No:TYPE_ARRAY.is_like_current*/
/*No:TYPE_ARRAY.is_boolean*/
/*No:TYPE_ARRAY.us_lower*/
/*No:TYPE_ARRAY.is_generic*/
/*No:TYPE_ARRAY.us_array*/
/*No:TYPE_ARRAY.is_bit*/
/*No:TYPE_ARRAY.is_real*/
/*No:TYPE_ARRAY.us_storage*/
void r244with(T244* C,T0* a1,T0* a2,T0* a3){
C->_base_class_name=a1;
C->_generic_list=se_ma245(1,
a3);
C->_written_mark=a2;
{T244*n=malloc(sizeof(*n));
*n=M244;
r244final(n,a1,X62run_type(a3));
C->_run_type_memory=(T0*)n;
}
}
T0* r244smallest_ancestor(T244* C,T0* a1){
T0* R=NULL;
T0* _array_of3=NULL;
T0* _array_of2=NULL;
T0* _array_of1=NULL;
T0* _rto=NULL;
_rto=X62run_type(a1);
/*[IF*/
if(X62is_array(_rto)){
_array_of1=X62run_type(/*(IRF4.6array_of*/r245first(((T245*)((C)->_generic_list/*8*/)))/*)*/);
_array_of2=r245first((T245*)(X62generic_list(_rto)));
_array_of3=X62smallest_ancestor(_array_of1,_array_of2);
/*[IF*/
if((_array_of3)==((void*)(_array_of1))){
R=(T0*)C;
}
else if((_array_of3)==((void*)(_array_of2))){
R=a1;
}
else{
{T244*n=malloc(sizeof(*n));
*n=M244;
r244make(n,NULL,_array_of3);
R=(T0*)n;
}
}
/*FI]*/
}
else{
R=X62smallest_ancestor(_rto,(T0*)C);
}
/*FI]*/
return R;
}
/*No:TYPE_ARRAY.is_any*/
/*No:TYPE_ARRAY.fatal_error*/
T0* r244run_time_mark(T244* C){
T0* R=NULL;
/*[IF*/
if(r244is_run_type(C)){
R=X62written_mark(r244run_type(C));
}
/*FI]*/
return R;
}
/*No:TYPE_ARRAY.is_expanded*/
/*No:TYPE_ARRAY.is_basic_eiffel_expanded*/
/*No:TYPE_ARRAY.is_string*/
/*No:TYPE_ARRAY.is_integer*/
/*No:TYPE_ARRAY.is_like_feature*/
/*No:TYPE_ARRAY.fz_dot*/
/*No:TYPE_ARRAY.is_anchored*/
/*No:TYPE_ARRAY.us_upper*/
T6 r244is_a(T244* C,T0* a1){
T6 R=0;
/*[IF*/
if((r244run_class(C))==((void*)(X62run_class(a1)))){
R=1;
}
else if(X62is_array(a1)){
R=X62is_a(/*(IRF4.6array_of*/r245first(((T245*)((C)->_generic_list/*8*/)))/*)*/,r245first((T245*)(X62generic_list(a1))));
/*[IF*/
if(!(R)){
/*[IRF3.6extend*/{T3 b1='\40';
r7extend((T7*)(oBC37explanation),b1);
}/*]*/
}
/*FI]*/
}
else if(r41is_subclass_of((T41*)(r244base_class(C)),X62base_class(a1))){
/*[IF*/
if(X62is_generic(a1)){
R=r41is_a_vncg((T41*)(r244base_class(C)),(T0*)C,a1);
}
else{
R=1;
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(!(R)){
r37add_type((T0*)C,((T0*)ms12_17730));
r37add_type(a1,((T0*)ms12_47));
}
/*FI]*/
return R;
}
T6 r244is_run_type(T244* C){
T6 R=0;
T0* _et=NULL;
/*[IF*/
if(((C)->_run_type_memory/*16*/)!=((void*)(NULL))){
R=1;
}
else{
_et=/*(IRF4.6array_of*/r245first(((T245*)((C)->_generic_list/*8*/)))/*)*/;
/*[IF*/
if((X62is_run_type(_et))&&((X62run_type(_et))==((void*)(_et)))){
C->_run_type_memory=(T0*)C;
R=1;
}
/*FI]*/
}
/*FI]*/
return R;
}
/*No:TYPE_ARRAY.is_character*/
/*No:TYPE_ARRAY.is_reference*/
/*No:TYPE_ARRAY.written_mark*/
T0*oBC244tmp_written_mark=NULL;
void r244make(T244* C,T0* a1,T0* a2){
{T49*n=malloc(sizeof(*n));
*n=M49;
r49make(n,((T0*)ms13_1990),a1);
C->_base_class_name=(T0*)n;
}
C->_generic_list=se_ma245(1,
a2);
r7copy((T7*)(oBC244tmp_written_mark),((T0*)ms13_1990));
r7extend((T7*)(oBC244tmp_written_mark),'\133');
r7append((T7*)(oBC244tmp_written_mark),X62written_mark(a2));
r7extend((T7*)(oBC244tmp_written_mark),'\135');
C->_written_mark=r66item(oBC244tmp_written_mark);
}
/*No:TYPE_ARRAY.is_none*/
/*No:TYPE_ARRAY.pretty_print*/
/*No:TYPE_ARRAY.is_array*/
/*No:TYPE_ARRAY.fz_inako*/
/*No:TYPE_ARRAY.fz_bga*/
/*No:TYPE_ARRAY.is_like_argument*/
/*No:TYPE_ARRAY.is_double*/
void r244final(T244* C,T0* a1,T0* a2){
C->_base_class_name=a1;
C->_generic_list=se_ma245(1,
a2);
r7copy((T7*)(oBC244tmp_written_mark),((T0*)ms13_1990));
r7extend((T7*)(oBC244tmp_written_mark),'\133');
r7append((T7*)(oBC244tmp_written_mark),X62written_mark(a2));
r7extend((T7*)(oBC244tmp_written_mark),'\135');
C->_written_mark=r66item(oBC244tmp_written_mark);
C->_run_type_memory=(T0*)C;
}
/*No:REAL_CONSTANT.start_position*/
/*No:REAL_CONSTANT.to_string*/
T0* r157add_comment(T157* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r32count(((T32*)((((T64*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T214*n=malloc(sizeof(*n));
*n=M214;
r214make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
T2 r157to_integer(T157* C){
T2 R=0;
r157error((C)->_start_position/*4*/,((T0*)ms12_45846));
return R;
}
void r157print_as_target(T157* C){
r310put_character((T310*)(oBC11fmt),'\50');
/*[IRF3.6pretty_print*/{T157* C1=C;
r310put_string((T310*)(oBC11fmt),(C1)->_to_string/*8*/);
}/*]*/
r310put_character((T310*)(oBC11fmt),'\51');
r310put_character((T310*)(oBC11fmt),'\56');
}
/*No:REAL_CONSTANT.bracketed_pretty_print*/
/*No:REAL_CONSTANT.to_runnable*/
/*No:REAL_CONSTANT.fz_iinaiv*/
int fBC157result_type=0;
T0*oBC157result_type=NULL;
T0* r157result_type(void){
if(fBC157result_type==0){
fBC157result_type=1;
{T255*n=malloc(sizeof(*n));
*n=M255;
r255make(n,NULL);
oBC157result_type=(T0*)n;
}
}
return oBC157result_type;}
void r157error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}
/*No:REAL_CONSTANT.precedence*/
void r157make(T157* C,T0* a1,T0* a2){
C->_start_position=a1;
C->_to_string=a2;
}
/*No:REAL_CONSTANT.is_current*/
/*No:REAL_CONSTANT.unary_minus*/
/*No:REAL_CONSTANT.pretty_print*/
/*No:REAL_CONSTANT.is_void*/
/*No:REAL_CONSTANT.atomic_precedence*/
/*No:LOCAL_NAME2.start_position*/
T0* r164to_string(T164* C){
T0* R=NULL;
R=((T167*)(/*(IRF4.6name*/r169item(((T169*)(((T162*)((C)->_local_var_list/*12*/))->_flat_list/*8*/)),(C)->_rank/*8*/)/*)*/))->_to_string/*8*/;
return R;
}
T0* r164add_comment(T164* C,T0* a1){
T0* R=NULL;
/*[IF*/
if(((a1)==((void*)(NULL)))||((/*(IRF4.6count*/r32count(((T32*)((((T64*)a1))->_list/*4*/)))/*)*/)==(0))){
R=(T0*)C;
}
else{
{T214*n=malloc(sizeof(*n));
*n=M214;
r214make(n,(T0*)C,a1);
R=(T0*)n;
}
}
/*FI]*/
return R;
}
T2 r164to_integer(T164* C){
T2 R=0;
r164error((C)->_start_position/*4*/,((T0*)ms12_45846));
return R;
}
void r164print_as_target(T164* C){
r310put_string((T310*)(oBC11fmt),r164to_string(C));
r310put_character((T310*)(oBC11fmt),'\56');
}
/*No:LOCAL_NAME2.rank*/
/*No:LOCAL_NAME2.bracketed_pretty_print*/
/*No:LOCAL_NAME2.local_var_list*/
T0* r164to_runnable(T164* C,T0* a1){
T0* R=NULL;
T0* _lvl=NULL;
T0* _rf=NULL;
_rf=r42top_rf((T42*)(oBC11small_eiffel));
_lvl=X312local_vars(_rf);
/*[IF*/
if(((C)->_local_var_list/*12*/)==((void*)(_lvl))){
R=(T0*)C;
}
else{
{T164*n=malloc(sizeof(*n));
*n=M164;
r164refer_to(n,(C)->_start_position/*4*/,_lvl,(C)->_rank/*8*/);
R=(T0*)n;
}
}
/*FI]*/
/*[IRF3.3set_is_used*/((((T167*)((T167*)(/*(IRF4.6name*/r169item(((T169*)((((T162*)_lvl))->_flat_list/*8*/)),(C)->_rank/*8*/)/*)*/))))->_is_used)=(1);
/*]*/
return R;
}
/*No:LOCAL_NAME2.fz_iinaiv*/
void r164refer_to(T164* C,T0* a1,T0* a2,T2 a3){
C->_start_position=a1;
C->_local_var_list=a2;
C->_rank=a3;
}
T0* r164result_type(T164* C){
T0* R=NULL;
R=r162type((T162*)((C)->_local_var_list/*12*/),(C)->_rank/*8*/);
return R;
}
void r164error(T0* a1,T0* a2){
r37add_position(a1);
r37error((T37*)(oBC11eh),a2);
}
/*No:LOCAL_NAME2.precedence*/
/*No:LOCAL_NAME2.is_current*/
/*No:LOCAL_NAME2.pretty_print*/
/*No:LOCAL_NAME2.is_void*/
/*No:LOCAL_NAME2.atomic_precedence*/
/*No:RUN_FEATURE_7.us_copy*/
/*No:RUN_FEATURE_7.use_current_state*/
/*No:RUN_FEATURE_7.actuals_clients*/
/*No:RUN_FEATURE_7.arguments*/
void r335initialize(T335* C){
T0* _n=NULL;
_n=X65to_string(/*(IRF4.6first_name*/r67item(((T67*)(((T275*)((C)->_base_feature/*32*/))->_names/*8*/)),1)/*)*/);
C->_arguments=((T275*)((C)->_base_feature/*32*/))->_arguments/*20*/;
/*[IF*/
if(((C)->_arguments/*36*/)!=((void*)(NULL))){
/*[IF*/
if(!(r171is_runnable((T171*)((C)->_arguments/*36*/),(C)->_current_type/*4*/))){
{T171*n=malloc(sizeof(*n));
*n=M171;
r171with(n,(C)->_arguments/*36*/,(C)->_current_type/*4*/);
C->_arguments=(T0*)n;
}
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r54require_check((T54*)(oBC11run_control))){
/*[IF*/
if(((((T0*)ms13_1812))==((void*)(X65to_string((C)->_name/*16*/))))&&(X62is_expanded((C)->_current_type/*4*/))){
}
else{
C->_require_assertion=r275run_require((T0*)C);
}
/*FI]*/
}
/*FI]*/
/*[IF*/
if(r54ensure_check((T54*)(oBC11run_control))){
C->_ensure_assertion=r275run_ensure((T0*)C);
}
/*FI]*/
/*[IF*/
if((((T0*)ms13_32955))==((void*)(_n))){
/*[IRF3.3set_used*/((((T336*)((T336*)(oBC11exceptions_handler))))->_used)=(1);
/*]*/
}
/*FI]*/
}
T0* r335start_position(T335* C){
T0* R=NULL;
R=r275start_position((T275*)((C)->_base_feature/*32*/));
return R;
}
/*No:RUN_FEATURE_7.require_assertion*/
/*No:RUN_FEATURE_7.clients_memory*/
/*No:RUN_FEATURE_7.ucs_not_computed*/
/*No:RUN_FEATURE_7.current_type*/
void r335add_client(T335* C,T0* a1){
T2 _i=0;
/*[IF*/
if(((C)->_actuals_clients/*12*/)==((void*)(NULL))){
{T319*n=malloc(sizeof(*n));
*n=M319;
r319with_capacity(n,4);
C->_actuals_clients=(T0*)n;
}
r319add_last((T319*)((C)->_actuals_clients/*12*/),a1);
}
else{
_i=r319fast_index_of((T319*)((C)->_actuals_clients/*12*/),a1);
/*[IF*/
if((_i)>(((T319*)((C)->_actuals_clients/*12*/))->_upper/*8*/)){
r319add_last((T319*)((C)->_actuals_clients/*12*/),a1);
}
/*FI]*/
}
/*FI]*/
r313add_client((T313*)(r335run_class(C)),a1);
}
T0* r335run_class(T335* C){
T0* R=NULL;
R=X62run_class((C)->_current_type/*4*/);
return R;
}
/*No:RUN_FEATURE_7.result_type*/
/*No:RUN_FEATURE_7.base_feature*/
/*No:RUN_FEATURE_7.ensure_assertion*/
void r335make(T335* C,T0* a1,T0* a2,T0* a3){
C->_current_type=a1;
C->_name=a2;
C->_base_feature=a3;
/*[IRF3.5add_rf*/r315put(((T315*)(((T313*)(r335run_class(C)))->_feature_dictionary/*20*/)),(T0*)C,X65to_key(a2));
/*]*/
r42incr_magic_count((T42*)(oBC11small_eiffel));
C->_use_current_state=15;
r42push((T42*)(oBC11small_eiffel),(T0*)C);
r335initialize(C);
r42pop((T42*)(oBC11small_eiffel));
}
/*No:RUN_FEATURE_7.name*/
/*No:RUN_FEATURE_7.local_vars*/
T2 r335arg_count(T335* C){
T2 R=0;
/*[IF*/
if(((C)->_arguments/*36*/)!=((void*)(NULL))){
R=/*(IRF4.6count*/(((T175*)(((T171*)((C)->_arguments/*36*/))->_flat_list/*8*/)))->_upper/*12*//*)*/;
}
/*FI]*/
return R;
}
T0* r335clients(T335* C){
T0* R=NULL;
T0* _bfbc=NULL;
T0* _bc=NULL;
/*[IF*/
if(((C)->_clients_memory/*8*/)==((void*)(NULL))){
_bc=X62base_class((C)->_current_type/*4*/);
_bfbc=((T275*)((C)->_base_feature/*32*/))->_base_class/*4*/;
/*[IF*/
if((_bc)==((void*)(_bfbc))){
R=((T275*)((C)->_base_feature/*32*/))->_clients/*16*/;
}
else{
R=r41clients_for(((T41*)_bc),(C)->_name/*16*/);
}
/*FI]*/
C->_clients_memory=R;
}
else{
R=(C)->_clients_memory/*8*/;
}
/*FI]*/
return R;
}
T6 r335is_exported_in(T335* C,T0* a1){
T6 R=0;
R=r83gives_permission_to((T83*)(r335clients(C)),a1);
return R;
}
/*No:RUN_FEATURE_7.us_raise_exception*/